#pragma once
#include "PyProTk.h"
#include "ProObjects.h"

struct PyProMdl: PyObject
{
	ProMdl mdl;
} ;

extern PyTypeObject PyProMdlType;

int PyInit_ProMdl(  PyObject* );


namespace pyBind{

struct ProMdlTag
{
	typedef ProMdl Protktype;
	typedef ProMdl* ProtkPointType;
	typedef PyProMdl* pytype;

	ProMdl m_protkval;
	pytype pyval;
	pytype pyRetval;

	ProMdl* GetValPoint()
	{
		return &m_protkval;
	}
	ProMdl GetVal()
	{
		return m_protkval;
	}
	//ProMdl protkval;

	int self_to_this(PyObject *self)
	{
		PyProMdl * mdl = (PyProMdl *)self;
		m_protkval = mdl->mdl;
		return 0;
	}
						
	static char* PyArgStr(){return "o";}
	int PyValueToTkValue()
	{
		m_protkval =  pyval->mdl;
		return 0; 
	}

	static char* PyTkStr(){return "o";}
	int TkValueToPyValue(){
		pyRetval = PyObject_New(PyProMdl,&PyProMdlType);
		pyRetval->mdl = m_protkval ;
		return 0; 
	}

};

};//end of namespace  pyBind